home *** CD-ROM | disk | FTP | other *** search
/ CD/PC Actual 76 / DVD Actual 1 Marzo 2003.iso / Trial / TurboCAD 7.1 Pro / Data.Cab / F24898_AutoRect.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-11-10  |  3.3 KB  |  71 lines

  1. /******************************************************************/
  2. /*                                                                */
  3. /*                      TurboCAD for Windows                      */
  4. /*                   Copyright (c) 1993 - 1999                    */
  5. /*             International Microcomputer Software, Inc.         */
  6. /*                            (IMSI)                              */
  7. /*                      All rights reserved.                      */
  8. /*                                                                */
  9. /******************************************************************/
  10. // AutoRect.h : Declaration of the CAutoRect
  11.  
  12. #ifndef __AUTORECT_H_
  13. #define __AUTORECT_H_
  14.  
  15. #include "resource.h"       // main symbols
  16. #include "RECTPAGE.H"    // Added by ClassView
  17.  
  18. /////////////////////////////////////////////////////////////////////////////
  19. class CRectPage;  // Defined in RectPage.h.
  20.  
  21. // CAutoRect
  22. class ATL_NO_VTABLE CAutoRect : 
  23.     public CComObjectRootEx<CComSingleThreadModel>,
  24.     public CComCoClass<CAutoRect, &CLSID_AutoRect>,
  25.     public IDispatchImpl<IAutoRect, &IID_IAutoRect, &LIBID_RRECTALib>
  26. {
  27. public:
  28.     CAutoRect()
  29.     {
  30.     }
  31.  
  32. DECLARE_REGISTRY_RESOURCEID(IDR_AUTORECT)
  33.  
  34. DECLARE_PROTECT_FINAL_CONSTRUCT()
  35.  
  36. BEGIN_COM_MAP(CAutoRect)
  37.     COM_INTERFACE_ENTRY(IAutoRect)
  38.     COM_INTERFACE_ENTRY(IDispatch)
  39. END_COM_MAP()
  40.  
  41. // IAutoRect
  42. public:
  43. ///    virtual void OnFinalRelease();
  44.     STDMETHOD(Initialize)(IDispatch* ThisRegenMethod, VARIANT_BOOL* ret);
  45.     STDMETHOD(Regen)(IDispatch* AGraphic);
  46.     STDMETHOD(Draw)(IDispatch* AGraphic, IDispatch* AView, VARIANT* AMatrix, VARIANT_BOOL* ret);
  47.     STDMETHOD(OnPropertyGet)(IDispatch* AGraphic, long PropID);
  48.     STDMETHOD(OnPropertyChanging)(IDispatch* AGraphic, long PropID, VARIANT* ValueOld, VARIANT* ValueNew, VARIANT_BOOL* ret);
  49.     STDMETHOD(OnPropertyChanged)(IDispatch* AGraphic, long PropID, VARIANT* ValueOld, VARIANT* ValueNew);
  50.     STDMETHOD(OnCopyGraphic)(IDispatch* CopyGraphic, IDispatch* SourceGraphic, VARIANT_BOOL* ret);
  51.     STDMETHOD(OnNewGraphic)(IDispatch* CopyGraphic, boolean Copy, VARIANT_BOOL* ret);
  52.     STDMETHOD(OnGeometryChanging)(IDispatch* AGraphic, long GeomID, VARIANT* ParamOld, VARIANT* ParamNew, VARIANT_BOOL* ret);
  53.     STDMETHOD(OnGeometryChanged)(IDispatch* AGraphic, long GeomID, VARIANT* ParamOld, VARIANT* ParamNew);
  54.     STDMETHOD(Wizard)(IDispatch* ThisRegenMethod, VARIANT* WizardNumber, VARIANT_BOOL* ret);
  55.     STDMETHOD(PropertyPages)(IDispatch* ThisRegenMethod, VARIANT* PageNumber, VARIANT_BOOL* ret);
  56.     STDMETHOD(PageDone)(IDispatch* ThisRegenMethod, VARIANT* PageNumber);
  57.     STDMETHOD(PageControls)(IDispatch* ThisRegenMethod, IDispatch* AGraphic, long PageNumber, boolean SaveProperties, VARIANT_BOOL* ret);
  58.     STDMETHOD(GetEnumNames)(long PropID, VARIANT* Names, VARIANT* Values, long* ret);
  59.     STDMETHOD(GetWizardInfo)(VARIANT* Names, long* ret);
  60.     STDMETHOD(GetPageInfo)(IDispatch* AGraphic, long* StockPages, VARIANT* Names, long* ret);
  61.     STDMETHOD(GetPropertyInfo)(VARIANT* Names, VARIANT* Types, VARIANT* IDs, VARIANT* Defaults, long* ret);
  62.     STDMETHOD(get_Description)(/*[out, retval]*/ BSTR *pVal);
  63.     STDMETHOD(put_Description)(/*[in]*/ BSTR newVal);
  64.     STDMETHOD(get_ClassID)(/*[out, retval]*/ BSTR *pVal);
  65.     STDMETHOD(put_ClassID)(/*[in]*/ BSTR newVal);
  66. protected:
  67.     CRectPage * m_pRectPage;
  68. };
  69.  
  70. #endif //__AUTORECT_H_
  71.